package com.refresh;

import com.refresh.indicator.PtrIndicator;


/**
 * 
 * Created by hanWG on 2015-10-14 上午11:24:43 $
 * 
 * @Description 定义规则:处理UI 头部规则
 *              <p/>
 *              onUIReset()
 */
public interface PtrUIHandler {
    /**
     * Content 重新回到顶部， Header 消失，整个下拉刷新过程完全结束以后，重置 View。
     * 
     * @param frame
     */
    public void onUIReset(PtrFrameLayout frame);

    /**
     * 准备刷新，Header 将要出现时调用。
     * 
     * @param frame
     */
    public void onUIRefreshPrepare(PtrFrameLayout frame);

    /**
     * 开始刷新，Header 进入刷新状态之前调用。
     * 
     * @param frame
     */
    public void onUIRefreshBegin(PtrFrameLayout frame);

    /**
     * 刷新结束，Header 开始向上移动之前调用。
     * 
     * @param frame
     */
    public void onUIRefreshComplete(PtrFrameLayout frame);

    /**
     * 下拉过程中位置变化回调,详细数据变化监听
     * 
     * @param frame 主视图
     * @param isUnderTouch
     * @param status 位置
     * @param ptrIndicator
     */
    public void onUIPositionChange(PtrFrameLayout frame, boolean isUnderTouch, byte status,
                    PtrIndicator ptrIndicator);
}
